package com.escool.model;

// Generated Dec 20, 2012 2:22:19 AM by Hibernate Tools 3.4.0.CR1

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;

import org.hibernate.validator.constraints.Range;

/**
 * TbExpedienteMateriaHasRotacionesActividad generated by hbm2java
 */
@Entity
@Table(name = "tb_expediente_materia_has_rotaciones_actividad")
public class TbExpedienteMateriaHasRotacionesActividad implements
		java.io.Serializable {

	private Integer idExpedienteMateriaHasRotacionesActividad;
	private TbExpedienteHasMateria tbExpedienteHasMateria;
	private TbRotacionesHasActividad tbRotacionesHasActividad;
	private Double notaActividad;
	

	public TbExpedienteMateriaHasRotacionesActividad() {
	}

	public TbExpedienteMateriaHasRotacionesActividad(
			TbExpedienteHasMateria tbExpedienteHasMateria,
			TbRotacionesHasActividad tbRotacionesHasActividad) {
		this.tbExpedienteHasMateria = tbExpedienteHasMateria;
		this.tbRotacionesHasActividad = tbRotacionesHasActividad;
	}

	public TbExpedienteMateriaHasRotacionesActividad(
			TbExpedienteHasMateria tbExpedienteHasMateria,
			TbRotacionesHasActividad tbRotacionesHasActividad,
			Double notaActividad) {
		this.tbExpedienteHasMateria = tbExpedienteHasMateria;
		this.tbRotacionesHasActividad = tbRotacionesHasActividad;
		this.notaActividad = notaActividad;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id_expediente_materia_has_rotaciones_actividad", unique = true, nullable = false)
	public Integer getIdExpedienteMateriaHasRotacionesActividad() {
		return this.idExpedienteMateriaHasRotacionesActividad;
	}

	public void setIdExpedienteMateriaHasRotacionesActividad(
			Integer idExpedienteMateriaHasRotacionesActividad) {
		this.idExpedienteMateriaHasRotacionesActividad = idExpedienteMateriaHasRotacionesActividad;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "tb_expediente_has_materia_id_expediente_has_materia", nullable = false)
	public TbExpedienteHasMateria getTbExpedienteHasMateria() {
		return this.tbExpedienteHasMateria;
	}

	public void setTbExpedienteHasMateria(
			TbExpedienteHasMateria tbExpedienteHasMateria) {
		this.tbExpedienteHasMateria = tbExpedienteHasMateria;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "tb_rotaciones_has_actividad_id_rotaciones_has_actividad", nullable = false)
	public TbRotacionesHasActividad getTbRotacionesHasActividad() {
		return this.tbRotacionesHasActividad;
	}

	public void setTbRotacionesHasActividad(
			TbRotacionesHasActividad tbRotacionesHasActividad) {
		this.tbRotacionesHasActividad = tbRotacionesHasActividad;
	}

	@Column(name = "nota_actividad", precision = 22, scale = 0)
	@Range(min=0,max=100)
	public Double getNotaActividad() {
		return this.notaActividad;
	}

	public void setNotaActividad(Double notaActividad) {
		this.notaActividad = notaActividad;
	}

}
